﻿using System;
namespace Producers.Rr.Xtee.Riik.Ee.Producer.Rr {
    
    
    public partial class RR44Response : global::Producers.Rr.Xtee.Riik.Ee.Producer.Rr.IRR44Response {
        
        private System.Collections.Generic.List<RR44Response.IIsikuandmedType> @__isikuandmed = new System.Collections.Generic.List<RR44Response.IIsikuandmedType>();
        
        private System.Collections.Generic.List<RR44Response.ISuhteandmedType> @__suhteandmed = new System.Collections.Generic.List<RR44Response.ISuhteandmedType>();
        
        public RR44Response() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public RR44Response(System.Collections.Generic.List<RR44Response.IIsikuandmedType> @isikuandmed, System.Collections.Generic.List<RR44Response.ISuhteandmedType> @suhteandmed) {
            this.@__isikuandmed = @isikuandmed;
            this.@__suhteandmed = @suhteandmed;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected RR44Response(IRR44Response @rR44Response) {
            this.@__isikuandmed = @rR44Response.Isikuandmed;
            this.@__suhteandmed = @rR44Response.Suhteandmed;
        }
        
        public virtual System.Collections.Generic.List<RR44Response.IIsikuandmedType> Isikuandmed {
            get {
                return this.@__isikuandmed;
            }
            set {
                this.@__isikuandmed = value;
            }
        }
        
        public virtual System.Collections.Generic.List<RR44Response.ISuhteandmedType> Suhteandmed {
            get {
                return this.@__suhteandmed;
            }
            set {
                this.@__suhteandmed = value;
            }
        }
        
        public partial class IsikuandmedType : IIsikuandmedType {
            
            private string @__isikuandmedPerenimi;
            
            private string @__isikuandmedEesnimi;
            
            private string @__isikuandmedSugu;
            
            private string @__isikuandmedSynniaeg;
            
            private string @__isikuandmedStaatus;
            
            private string @__isikuandmedEestiAadress;
            
            private string @__isikuandmedtdoktyyp;
            
            private string @__isikuandmedtdokseeria;
            
            private string @__isikuandmedtdoknr;
            
            private string @__isikuandmedtdokvaljakp;
            
            private string @__isikuandmedtdokkehta;
            
            private string @__isikuandmedtdokkehtl;
            
            private string @__isikuandmedtdokstaatus;
            
            private string @__isikuandmedRahvus;
            
            private string @__isikuandmedEmakeel;
            
            private string @__isikuandmedHaridus;
            
            private string @__isikuandmedTegevusala;
            
            public IsikuandmedType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public IsikuandmedType(
                        string @isikuandmedPerenimi, 
                        string @isikuandmedEesnimi, 
                        string @isikuandmedSugu, 
                        string @isikuandmedSynniaeg, 
                        string @isikuandmedStaatus, 
                        string @isikuandmedEestiAadress, 
                        string @isikuandmedtdoktyyp, 
                        string @isikuandmedtdokseeria, 
                        string @isikuandmedtdoknr, 
                        string @isikuandmedtdokvaljakp, 
                        string @isikuandmedtdokkehta, 
                        string @isikuandmedtdokkehtl, 
                        string @isikuandmedtdokstaatus, 
                        string @isikuandmedRahvus, 
                        string @isikuandmedEmakeel, 
                        string @isikuandmedHaridus, 
                        string @isikuandmedTegevusala) {
                this.@__isikuandmedPerenimi = @isikuandmedPerenimi;
                this.@__isikuandmedEesnimi = @isikuandmedEesnimi;
                this.@__isikuandmedSugu = @isikuandmedSugu;
                this.@__isikuandmedSynniaeg = @isikuandmedSynniaeg;
                this.@__isikuandmedStaatus = @isikuandmedStaatus;
                this.@__isikuandmedEestiAadress = @isikuandmedEestiAadress;
                this.@__isikuandmedtdoktyyp = @isikuandmedtdoktyyp;
                this.@__isikuandmedtdokseeria = @isikuandmedtdokseeria;
                this.@__isikuandmedtdoknr = @isikuandmedtdoknr;
                this.@__isikuandmedtdokvaljakp = @isikuandmedtdokvaljakp;
                this.@__isikuandmedtdokkehta = @isikuandmedtdokkehta;
                this.@__isikuandmedtdokkehtl = @isikuandmedtdokkehtl;
                this.@__isikuandmedtdokstaatus = @isikuandmedtdokstaatus;
                this.@__isikuandmedRahvus = @isikuandmedRahvus;
                this.@__isikuandmedEmakeel = @isikuandmedEmakeel;
                this.@__isikuandmedHaridus = @isikuandmedHaridus;
                this.@__isikuandmedTegevusala = @isikuandmedTegevusala;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected IsikuandmedType(IIsikuandmedType @isikuandmedType) {
                this.@__isikuandmedPerenimi = @isikuandmedType.IsikuandmedPerenimi;
                this.@__isikuandmedEesnimi = @isikuandmedType.IsikuandmedEesnimi;
                this.@__isikuandmedSugu = @isikuandmedType.IsikuandmedSugu;
                this.@__isikuandmedSynniaeg = @isikuandmedType.IsikuandmedSynniaeg;
                this.@__isikuandmedStaatus = @isikuandmedType.IsikuandmedStaatus;
                this.@__isikuandmedEestiAadress = @isikuandmedType.IsikuandmedEestiAadress;
                this.@__isikuandmedtdoktyyp = @isikuandmedType.Isikuandmedtdoktyyp;
                this.@__isikuandmedtdokseeria = @isikuandmedType.Isikuandmedtdokseeria;
                this.@__isikuandmedtdoknr = @isikuandmedType.Isikuandmedtdoknr;
                this.@__isikuandmedtdokvaljakp = @isikuandmedType.Isikuandmedtdokvaljakp;
                this.@__isikuandmedtdokkehta = @isikuandmedType.Isikuandmedtdokkehta;
                this.@__isikuandmedtdokkehtl = @isikuandmedType.Isikuandmedtdokkehtl;
                this.@__isikuandmedtdokstaatus = @isikuandmedType.Isikuandmedtdokstaatus;
                this.@__isikuandmedRahvus = @isikuandmedType.IsikuandmedRahvus;
                this.@__isikuandmedEmakeel = @isikuandmedType.IsikuandmedEmakeel;
                this.@__isikuandmedHaridus = @isikuandmedType.IsikuandmedHaridus;
                this.@__isikuandmedTegevusala = @isikuandmedType.IsikuandmedTegevusala;
            }
            
            public virtual string IsikuandmedPerenimi {
                get {
                    return this.@__isikuandmedPerenimi;
                }
                set {
                    this.@__isikuandmedPerenimi = value;
                }
            }
            
            public virtual string IsikuandmedEesnimi {
                get {
                    return this.@__isikuandmedEesnimi;
                }
                set {
                    this.@__isikuandmedEesnimi = value;
                }
            }
            
            public virtual string IsikuandmedSugu {
                get {
                    return this.@__isikuandmedSugu;
                }
                set {
                    this.@__isikuandmedSugu = value;
                }
            }
            
            public virtual string IsikuandmedSynniaeg {
                get {
                    return this.@__isikuandmedSynniaeg;
                }
                set {
                    this.@__isikuandmedSynniaeg = value;
                }
            }
            
            public virtual string IsikuandmedStaatus {
                get {
                    return this.@__isikuandmedStaatus;
                }
                set {
                    this.@__isikuandmedStaatus = value;
                }
            }
            
            public virtual string IsikuandmedEestiAadress {
                get {
                    return this.@__isikuandmedEestiAadress;
                }
                set {
                    this.@__isikuandmedEestiAadress = value;
                }
            }
            
            public virtual string Isikuandmedtdoktyyp {
                get {
                    return this.@__isikuandmedtdoktyyp;
                }
                set {
                    this.@__isikuandmedtdoktyyp = value;
                }
            }
            
            public virtual string Isikuandmedtdokseeria {
                get {
                    return this.@__isikuandmedtdokseeria;
                }
                set {
                    this.@__isikuandmedtdokseeria = value;
                }
            }
            
            public virtual string Isikuandmedtdoknr {
                get {
                    return this.@__isikuandmedtdoknr;
                }
                set {
                    this.@__isikuandmedtdoknr = value;
                }
            }
            
            public virtual string Isikuandmedtdokvaljakp {
                get {
                    return this.@__isikuandmedtdokvaljakp;
                }
                set {
                    this.@__isikuandmedtdokvaljakp = value;
                }
            }
            
            public virtual string Isikuandmedtdokkehta {
                get {
                    return this.@__isikuandmedtdokkehta;
                }
                set {
                    this.@__isikuandmedtdokkehta = value;
                }
            }
            
            public virtual string Isikuandmedtdokkehtl {
                get {
                    return this.@__isikuandmedtdokkehtl;
                }
                set {
                    this.@__isikuandmedtdokkehtl = value;
                }
            }
            
            public virtual string Isikuandmedtdokstaatus {
                get {
                    return this.@__isikuandmedtdokstaatus;
                }
                set {
                    this.@__isikuandmedtdokstaatus = value;
                }
            }
            
            public virtual string IsikuandmedRahvus {
                get {
                    return this.@__isikuandmedRahvus;
                }
                set {
                    this.@__isikuandmedRahvus = value;
                }
            }
            
            public virtual string IsikuandmedEmakeel {
                get {
                    return this.@__isikuandmedEmakeel;
                }
                set {
                    this.@__isikuandmedEmakeel = value;
                }
            }
            
            public virtual string IsikuandmedHaridus {
                get {
                    return this.@__isikuandmedHaridus;
                }
                set {
                    this.@__isikuandmedHaridus = value;
                }
            }
            
            public virtual string IsikuandmedTegevusala {
                get {
                    return this.@__isikuandmedTegevusala;
                }
                set {
                    this.@__isikuandmedTegevusala = value;
                }
            }
        }
        
        public interface IIsikuandmedType {
            
            string IsikuandmedPerenimi {
                get;
                set;
            }
            
            string IsikuandmedEesnimi {
                get;
                set;
            }
            
            string IsikuandmedSugu {
                get;
                set;
            }
            
            string IsikuandmedSynniaeg {
                get;
                set;
            }
            
            string IsikuandmedStaatus {
                get;
                set;
            }
            
            string IsikuandmedEestiAadress {
                get;
                set;
            }
            
            string Isikuandmedtdoktyyp {
                get;
                set;
            }
            
            string Isikuandmedtdokseeria {
                get;
                set;
            }
            
            string Isikuandmedtdoknr {
                get;
                set;
            }
            
            string Isikuandmedtdokvaljakp {
                get;
                set;
            }
            
            string Isikuandmedtdokkehta {
                get;
                set;
            }
            
            string Isikuandmedtdokkehtl {
                get;
                set;
            }
            
            string Isikuandmedtdokstaatus {
                get;
                set;
            }
            
            string IsikuandmedRahvus {
                get;
                set;
            }
            
            string IsikuandmedEmakeel {
                get;
                set;
            }
            
            string IsikuandmedHaridus {
                get;
                set;
            }
            
            string IsikuandmedTegevusala {
                get;
                set;
            }
        }
        
        public partial class SuhteandmedType : ISuhteandmedType {
            
            private string @__suhteandmedssuhtetyyp;
            
            private string @__suhteandmedsIsikukood;
            
            private string @__suhteandmedsPerenimi;
            
            private string @__suhteandmedsEesnimi;
            
            private string @__suhteandmedsIsanimi;
            
            private string @__suhteandmedsEestiAadress;
            
            private string @__suhteandmedsStaatus;
            
            public SuhteandmedType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public SuhteandmedType(string @suhteandmedssuhtetyyp, string @suhteandmedsIsikukood, string @suhteandmedsPerenimi, string @suhteandmedsEesnimi, string @suhteandmedsIsanimi, string @suhteandmedsEestiAadress, string @suhteandmedsStaatus) {
                this.@__suhteandmedssuhtetyyp = @suhteandmedssuhtetyyp;
                this.@__suhteandmedsIsikukood = @suhteandmedsIsikukood;
                this.@__suhteandmedsPerenimi = @suhteandmedsPerenimi;
                this.@__suhteandmedsEesnimi = @suhteandmedsEesnimi;
                this.@__suhteandmedsIsanimi = @suhteandmedsIsanimi;
                this.@__suhteandmedsEestiAadress = @suhteandmedsEestiAadress;
                this.@__suhteandmedsStaatus = @suhteandmedsStaatus;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected SuhteandmedType(ISuhteandmedType @suhteandmedType) {
                this.@__suhteandmedssuhtetyyp = @suhteandmedType.Suhteandmedssuhtetyyp;
                this.@__suhteandmedsIsikukood = @suhteandmedType.SuhteandmedsIsikukood;
                this.@__suhteandmedsPerenimi = @suhteandmedType.SuhteandmedsPerenimi;
                this.@__suhteandmedsEesnimi = @suhteandmedType.SuhteandmedsEesnimi;
                this.@__suhteandmedsIsanimi = @suhteandmedType.SuhteandmedsIsanimi;
                this.@__suhteandmedsEestiAadress = @suhteandmedType.SuhteandmedsEestiAadress;
                this.@__suhteandmedsStaatus = @suhteandmedType.SuhteandmedsStaatus;
            }
            
            public virtual string Suhteandmedssuhtetyyp {
                get {
                    return this.@__suhteandmedssuhtetyyp;
                }
                set {
                    this.@__suhteandmedssuhtetyyp = value;
                }
            }
            
            public virtual string SuhteandmedsIsikukood {
                get {
                    return this.@__suhteandmedsIsikukood;
                }
                set {
                    this.@__suhteandmedsIsikukood = value;
                }
            }
            
            public virtual string SuhteandmedsPerenimi {
                get {
                    return this.@__suhteandmedsPerenimi;
                }
                set {
                    this.@__suhteandmedsPerenimi = value;
                }
            }
            
            public virtual string SuhteandmedsEesnimi {
                get {
                    return this.@__suhteandmedsEesnimi;
                }
                set {
                    this.@__suhteandmedsEesnimi = value;
                }
            }
            
            public virtual string SuhteandmedsIsanimi {
                get {
                    return this.@__suhteandmedsIsanimi;
                }
                set {
                    this.@__suhteandmedsIsanimi = value;
                }
            }
            
            public virtual string SuhteandmedsEestiAadress {
                get {
                    return this.@__suhteandmedsEestiAadress;
                }
                set {
                    this.@__suhteandmedsEestiAadress = value;
                }
            }
            
            public virtual string SuhteandmedsStaatus {
                get {
                    return this.@__suhteandmedsStaatus;
                }
                set {
                    this.@__suhteandmedsStaatus = value;
                }
            }
        }
        
        public interface ISuhteandmedType {
            
            string Suhteandmedssuhtetyyp {
                get;
                set;
            }
            
            string SuhteandmedsIsikukood {
                get;
                set;
            }
            
            string SuhteandmedsPerenimi {
                get;
                set;
            }
            
            string SuhteandmedsEesnimi {
                get;
                set;
            }
            
            string SuhteandmedsIsanimi {
                get;
                set;
            }
            
            string SuhteandmedsEestiAadress {
                get;
                set;
            }
            
            string SuhteandmedsStaatus {
                get;
                set;
            }
        }
    }
}
